import request from "./http";


// 	 * 采集通道 -- 查询所有通道
export function findchannelconfigAll() {
    return request({
        url: "/channelconfig/query/",
        method: "get",
      
    });
}
// 	 * 采集通道 -- 添加一个通道
export function channelconfigAdd(params) {
    return request({
        url: "/channelconfig/addchannel/",
        method: "post",
        headers:{
            'Content-Type': 'application/json',
            'Accept':'*/*'
          },
        data:params
      
    });
}
// 	 * 采集通道 -- 批量新增通道
export function batchChannelconfigAdd(params) {
  return request({
    url: "/channelconfig/addchannels/batch/",
    method: "post",
    headers: {
      "Content-Type": "application/json",
      Accept: "*/*",
    },
    data: params,
  });
}
// 	 * 采集通道 --更新一个通道
export function channelconfigEdit(params) {
    return request({
        url: "/channelconfig/updatechannel/",
        method: "put",
        headers:{
            'Content-Type': 'application/json',
            'Accept':'*/*'
          },
        data:params
      
    });
}


// 	 * 采集通道 -- 删除一个通道
export function deletechannel(params) {
    return request({
      url: `/channelconfig/deletechannel/${params.id}`,
      method: "DELETE",
    });
}
// 	 * 采集通道 -- 批量删除通道
export function batchDelChannelchun(params) {
  return request({
    url: "/channelconfig/batchDelete/",
    method: "DELETE",
    data: params,
  });
}
// 	 * 设备模板 -- 查询所有设备组、设备模板、设备子系列
export function findDeviceGroupListAll() {
    return request({
        url: "/device_template/tree/",
        method: "get",
    });
}
// 	 * 设备模板 -- 查询所有设备组
export function findDeviceGroupList() {
    return request({
        url: "/device_template/group/list/",
        method: "get",
    });
}
// 	 * 设备模板 -- 添加设备组
export function addDeviceGroup(params) {
    return request({
        url: "/device_template/group/",
        method: "post",
        data:params
    });
}
// 	 * 设备模板 -- 更新设备组
export function editDeviceGroup(params) {
    return request({
        url: "/device_template/group/",
        method: "put",
        data:params
    });
}
// 	 * 设备模板 -- 删除设备组
export function DELETEDeviceGroup(params) {
    return request({
        // url: "/device_template/template_query",
        url: `/device_template/group/${params}/`,
        method: "DELETE",
        // params
    });
}
// 	 * 设备模板 -- 查询设备模板
export function findDeviceTemplate(params) {
    return request({
        // url: "/device_template/template_query",
        url: `/device_template/template/group/${params}/`,
        method: "get",
        // params
    });
}
// 	 * 设备模板 -- 添加设备模板
export function addDeviceTemplate(params) {
    return request({
        url: "/device_template/template/",
        method: "post",
        data:params
    });
}
// 	 * 设备模板 -- 修改设备模板
export function editDeviceTemplate(params) {
    return request({
        url: "/device_template/template/",
        method: "put",
        data:params
    });
}
// 	 * 设备模板 -- 删除设备模板
export function DELETEDeviceTemplate(params) {
    return request({
        // url: "/device_template/template_query",
        url: `/device_template/template/${params}/`,
        method: "DELETE",
        // params
    });
}
// 	 * 设备模板 -- 查询所有设备子系列
export function findDeviceSerial(params) {
    return request({
        // url: "/device_template/serial_query",
        url: `/device_template/serial/template/${params}/`,
        method: "get",
        // data:params
    });
}
// 	 * 设备模板 -- 添加设备子系列
export function addSerialType(params) {
    return request({
        url: "/device_template/serial/",
        method: "post",
        data:params
    });
}

// 	 * 设备模板 -- 修改设备子系列
export function editSerialType(params) {
    return request({
        url: "/device_template/serial/",
        method: "put",
        data:params
    });
}
// 	 * 设备模板 -- 删除设备子系列
export function delSerialType(params) {
    return request({
        url: `/device_template/serial/${params}/`,
        method: "DELETE",
    });
}
// * 以下数据区跟数据点/项的，都是通用设备
export function findAreaQueryTong(params) {
    return request({
        url: `/device_template/serial/${params}/common/area/ `,
        method: "get",
    });
}
// 	 * 设备模板 -- 添加设备子系列所有数据区
export function addTongArea(params) {
    return request({
        url: "/device_template/serial/common/area/",
        method: "post",
        data:params
    });
}
// 	 * 设备模板 -- 修改设备子系列所有数据区
export function editTongArea(params) {
    return request({
        url: "/device_template/serial/common/area/",
        method: "put",
        data:params
    });
}
// 	 * 设备模板 -- 删除设备子系列所有数据区
export function delTongArea(params) {
    return request({
        url: `/device_template/serial/common/area/${params}/`,
        method: "DELETE",
    });
}
// 	 * 设备模板 -- 查询Tong数据区下的所有数据点
export function findTongItem(params) {
    return request({
        url: `/device_template/serial/common/item/list/${params}/`,
        method: "get",
    });
}
// 	 * 设备模板 -- 批量Tong数据区下的所有数据点
export function batchAddTongItem(params) {
    return request({
        url: `/device_template/serial/common/item/batch/${params.id}/`,
        method: "post",
        data:params.arr
    });
}
// 	 * 设备模板 -- 添加Tong数据区下的所有数据点
export function addTongItem(params) {
    return request({
        url: "/device_template/serial/common/item/",
        method: "post",
        data:params
    });
}
// 	 * 设备模板 -- 修改Tong数据区下的所有数据点
export function editTongItem(params) {
    return request({
        url: "/device_template/serial/common/item/",
        method: "put",
        data:params
    });
}
// 	 * 设备模板 -- 删除Tong数据区下的所有数据点
export function delTongItem(params) {
    return request({
        url: `/device_template/serial/common/item/${params}/`,
        method: "DELETE",
    });
}

// * 以上数据区跟数据点/项的，都是通用设备






// * 以上数据区跟数据点/项的，都是Modbus设备
// 	 * 设备模板 -- 查询设备子系列所有数据区
export function findAreaQuery(params) {
    return request({
        url: `/device_template/modbus/area/${params}/`,
        method: "get",
    });
}
// 	 * 设备模板 -- 添加设备子系列所有数据区
export function addModbusArea(params) {
    return request({
        url: "/device_template/modbus/area/",
        method: "post",
        data:params
    });
}
// 	 * 设备模板 -- 修改设备子系列所有数据区
export function editModbusArea(params) {
    return request({
        url: "/device_template/modbus/area/",
        method: "put",
        data:params
    });
}
// 	 * 设备模板 -- 删除设备子系列所有数据区
export function delModbusArea(params) {
    return request({
      url: `/device_template/modbus/area/${params}/`,
      method: "DELETE",
    });
}
// 	 * 设备模板 -- 查询modbus数据区下的所有数据点
export function findModbusItem(params) {
    return request({
        url: `/device_template/modbus/item/${params}/`,
        method: "get",
    });
}
// 	 * 设备模板 -- 添加modbus数据区下的所有数据点
export function addModbusItem(params) {
    return request({
        url: "/device_template/modbus/item/",
        method: "post",
        data:params
    });
}
// 	 * 设备模板 -- 批量添加modbus数据区下的所有数据点
export function batchAddModbusItem(params) {
    return request({
        url: `/device_template/modbus/item/batch/${params.id}/`,
        method: "post",
        data:params.arr
    });
}
// 	 * 设备模板 -- 修改modbus数据区下的所有数据点
export function editModbusItem(params) {
    return request({
        url: "/device_template/modbus/item/",
        method: "put",
        data:params
    });
}
// 	 * 设备模板 -- 删除modbus数据区下的所有数据点
export function delModbusItem(params) {
    return request({
        url: `/device_template/modbus/item/${params}/`,
        method: "DELETE",
    });
}
// 	 * 设备模板 -- 批量删除数据点
export function delModbusItembatchDelete(params) {
    return request({
        url: `/device_template/modbus/item/batch_delete/`,
        method: "put",
        data:params
    });
}
// 	 * 设备模板 -- 批量删除数据点
export function delModbusItembatchDeleteCommon(params) {
    return request({
        url: `/device_template/serial/common/area/batch_delete/`,
        method: "put",
        data:params
    });
}



// 	 * 转发通道 -- 获取转发通道列表
export function transmitChannelList() {
    return request({
      url: "/transmit_protocol_type/tree/",
      method: "get",
    });
}
// 	 * 转发通道 -- 获取转发通道列表
export function transmitChannelListss() {
    return request({
      url: "/transmit_protocol_type/trans_channel/",
      method: "get",
    });
}
// 	 * 转发通道 -- 添加转发通道
export function transmitAddChannel(params) {
    return request({
        url: "/transmit/channel/",
        method: "post",
        data:params
    });
}
// 	 * 转发通道 -- 获取转发协议类型列表
export function getAgreement() {
    return request({
      url: "/transmit_protocol_type/all/",
      method: "get",
    });
}
// 	 * 转发通道 -- 添加转发协议
export function addAgreemntapi(params) {
    return request({
      url: "/transmit_protocol_type/",
      method: "post",
      data: params,
    });
}
// 	 * 转发通道 -- 修改转发协议
export function editAgreementapi(params) {
    return request({
      url: "/transmit_protocol_type/",
      method: "put",
      data: params,
    });
}
// 	 * 转发通道 -- 删除转发协议
export function delAgreementapi(params) {
    return request({
      url: `/transmit_protocol_type/${params}`,
      method: "DELETE",
    });
}

// 	 * 转发通道 -- 查询转发类型列表
export function forwardingTypeList(params) {
    return request({
      url: `/transmit_type/${params}`,
      method: "get",
    });
}
// 	 * 转发通道 -- 添加转发类型列表
export function addAgreemntapitype(params) {
    return request({
      url: "/transmit_type/",
      method: "post",
      data: params,
    });
}
// 	 * 转发通道 -- 删除转发类型列表
export function delAgreementapitype(params) {
    return request({
      url: `/transmit_type/${params}`,
      method: "DELETE",
    });
}
// 	 * 转发通道 -- 修改转发类型列表
export function editAgreementapitype(params) {
    return request({
      url: "/transmit_type/",
      method: "PUT",
      data: params,
    });
}

// 	 * 群调群控 -- 查询所有并网点
export function getgridConnectGroup() {
    return request({
        url: "/agvc_setup/grid_connect_group",
        method: "get",
    });
}
// 	 * 群调群控 -- 新增并网点
export function addgridConnectGroup(params) {
    return request({
        url: "/agvc_setup/grid_connect_group",
        method: "POST",
        data:params
    });
}
// 	 * 群调群控 -- 修改并网点
export function editgridConnectGroup(params) {
    return request({
        url: "/agvc_setup/grid_connect_group",
        method: "put",
        data:params
    });
}
// 	 * 群调群控 -- 删除并网点
export function delgridConnectGroup(params) {
    return request({
        url: "/agvc_setup/grid_connect_group",
        method: "DELETE",
        data:params
    });
}
// 	 * 群调群控 -- 根据并网点查询逆变器组
export function getInverters(params) {
    return request({
        url: "/agvc_setup/inverters/",
        method: "get",
        params
    });
}
// 	 * 群调群控 -- 新增逆变器组
export function saveInverters(params) {
    return request({
        url: "/agvc_setup/inverters",
        method: "post",
        data:params
    });
}
// 	 * 群调群控 -- 修改逆变器组
export function editInverters(params) {
    return request({
        url: "/agvc_setup/inverters",
        method: "put",
        data:params
    });
}
// 	 * 群调群控 -- 删除逆变器组
export function delInverters(params) {
    return request({
        url: "/agvc_setup/inverters",
        method: "DELETE",
        data:params
    });
}

// 	 * 更新程序 -- 在线更新
export function updateProgram(params) {
    return request({
      url: `/Program/Update?Md5=${params.Md5}`,
      method: "put",
      headers: {
        "Content-Type": "multipart/form-data", // 必须手动设置
      },
      data: params.files,
    });
}

// 	 * 授权管理  -- sn码
export function authconfigsavesncode(params) {
    return request({
        url: "/authconfig/save_sn_code",
        method: "post",
        data:params
    });
}
// 	 * 授权管理  -- 授权码
export function authconfigsaveaucode(params) {
    return request({
        url: "/authconfig/save_au_code",
        method: "post",
        data:params
    });
}
// 	 * 授权管理  -- 查询chipid
export function authconfigchipId() {
    return request({
      url: "/authconfig/chip_id",
      method: "get",
    });
}
// 	 * 授权管理  -- 查询授权码状态
export function authconfigauth_status() {
    return request({
        url: "/authconfig/auth_status",
        method: "get",
    });
}

// 	 * 网关信息  -- 查询APP运行跟系统运行信息
export function getSystemMetrics() {
    return request({
        url: "/product/information/system_metrics",
        method: "post",
    });
}
// 	 * 网关信息  -- 查询基本信息
export function getInformation() {
    return request({
        url: "/product/information/all",
        method: "get",
    });
}
// 	 * 网关信息  -- 修改基本信息
export function editInformation(params) {
  return request({
    url: "/product/information/update",
    method: "put",
    data: params,
  });
}

// 	 * 采集通道  -- 导出管理机设备变量信息
export function exportDevices() {
    return request({
        url: "/channelconfig/exportDevices/",
        method: "post",
    });
}

// 	 * 采集通道  -- 获取通道设备状态量
export function getChannelAndDeviceState() {
  return request({
    url: "/variables/ChannelAndDeviceState/",
    method: "get",
  });
}


// 	 * 远程配置  -- 连接
export function remoteConfigEnable() {
  return request({
    url: "/remote_config/enable/",
    method: "post",
  });
}
// 	 * 远程配置  -- 断开
export function remoteConfigDisable() {
  return request({
    url: "/remote_config/disable/",
    method: "post",
  });
}
// 	 * 远程配置  -- 状态
export function remoteConfigStatus() {
  return request({
    url: "/remote_config/status/",
    method: "get",
  });
}
